#ifndef GATE_H
#define GATE_H
#include "QDebug"
#include "QMouseEvent"
class Gate
{
public:
    Gate();
    int Inputs[6];
    int output;
    int curlen;//进行拓扑遍历时的当前输入个数
    int indegree;//入度
    int maxlen;//最多有几个输入
    int gate_x,gate_y;//门的横坐标和纵坐标
    int from[6];
    int type;//0:正常门 1：输入 2：输出 3:NOT、NAND、NOR
    QString gateType;
    char gateName;
    void setName();
    static int ASCII;
//由于Qt没有鼠标单击事件，所以只能用状态转换实现，
//0：等待状态 1：当前鼠标按下（可以连线）2：鼠标按下并松开（红色选中状态，可以移动）
    int clickState;
    virtual void DoSimulate();
    void DrawLine();
};

#endif // GATE_H
